package com.zyj.check.service;

import com.zyj.check.domain.AssetsCheck;
import com.zyj.check.domain.AssetsCheckDetail;

import java.util.List;

/**
 * 资产盘点Service接口
 * 
 * @author zhuyujie
 * @date 2022-05-17
 */
public interface IAssetsCheckService 
{
    /**
     * 查询资产盘点
     * 
     * @param checkId 资产盘点主键
     * @return 资产盘点
     */
    public AssetsCheck selectAssetsCheckByCheckId(Long checkId);

    /**
     * 查询资产盘点列表
     * 
     * @param assetsCheck 资产盘点
     * @return 资产盘点集合
     */
    public List<AssetsCheck> selectAssetsCheckList(AssetsCheck assetsCheck);

    /**
     * 新增资产盘点
     * 
     * @param assetsCheck 资产盘点
     * @return 结果
     */
    public int insertAssetsCheck(AssetsCheck assetsCheck);

    /**
     * 修改资产盘点
     * 
     * @param assetsCheck 资产盘点
     * @return 结果
     */
    public int updateAssetsCheck(AssetsCheck assetsCheck);

    /**
     * 批量删除资产盘点
     * 
     * @param checkIds 需要删除的资产盘点主键集合
     * @return 结果
     */
    public int deleteAssetsCheckByCheckIds(String checkIds);

    /**
     * 删除资产盘点信息
     * 
     * @param checkId 资产盘点主键
     * @return 结果
     */
    public int deleteAssetsCheckByCheckId(Long checkId);

    public int selectAssetsCheckDetailCount(Long checkId,Integer flag);

    public List<AssetsCheckDetail> selectAssetsCheckDetailList(AssetsCheckDetail assetsCheck);

    public int checkSave(AssetsCheckDetail assetsCheckDetail);

    public int updateAssetsCheckDetails(AssetsCheckDetail assetsCheckDetail);

    public List<AssetsCheck> selectAssetsCheckDetailsByType(Long checkId);

    public int selectAssetsCheckDetailsByTypeCount(Long checkId, String typename, String isfinash);
}
